// ----------------------------------
// RSDK Project: Sonic Essence
// Script Description: Fence
// Script Author: Christian Whitehead/Simon Thomley/Xanman
// Edits by Team ReDream
// ----------------------------------

// Aliases
private alias 24 : TYPE_RAIN

// Function declarations
private alias object.value0 : timer
private alias object.value1 : rain.soundcheck

function RainSound
	foreach (TypeName[Pause Menu], arrayPos0, ALL_ENTITIES)
		if stage.state == STAGE_PAUSED
			StopSfx(SfxName[Rain])
			rain.soundcheck = 0
		end if
	next
end function

event ObjectMain
	if rain.soundcheck == 0
		PlaySfx(SfxName[Rain], 1)
		rain.soundcheck = 1
	end if

	CallFunction(RainSound)
	object.priority = PRIORITY_ACTIVE
	timer++
	if timer == 1
		if object.frame < 10
			object.frame++
		else
			object.frame = 0
		end if
		timer = 0
	end if
end event


event ObjectDraw
	object.inkEffect = INK_ALPHA
	object.alpha = 200
		temp3 = 0
		temp4 = 0
		while temp3 < screen.xsize
			DrawSpriteScreenFX(object.frame, FX_INK, temp3, temp4)
			temp3 += 64
		loop

		temp3 = 0
		temp4 = 64
		while temp3 < screen.xsize
			DrawSpriteScreenFX(object.Frame, FX_INK, temp3, temp4)
			temp3 += 64
		loop

		temp3 = 0
		temp4 = 128
		while temp3 < screen.xsize
			DrawSpriteScreenFX(object.Frame, FX_INK, temp3, temp4)
			temp3 += 64
		loop

		temp3 = 0
		temp4 = 192
		while temp3 < screen.xsize
			DrawSpriteScreenFX(object.Frame, FX_INK, temp3, temp4)
			temp3 += 64
		loop
end event


event ObjectStartup
	LoadSpriteSheet("SSZ/Objects.gif")

	// Set each ring's draw order to 4
	foreach (TypeName[Rain], arrayPos0, ALL_ENTITIES)
		object[arrayPos0].drawOrder = 5
	next

	// Ring frames

	SpriteFrame(0, 0, 64, 64, 1, 1)
	SpriteFrame(0, 0, 64, 64, 66, 1)
	SpriteFrame(0, 0, 64, 64, 131, 1)
	SpriteFrame(0, 0, 64, 64, 196, 1)
	SpriteFrame(0, 0, 64, 64, 261, 1)
	SpriteFrame(0, 0, 64, 64, 326, 1)
	SpriteFrame(0, 0, 64, 64, 391, 1)

	SpriteFrame(0, 0, 64, 64, 1, 66)
	SpriteFrame(0, 0, 64, 64, 66, 66)
	SpriteFrame(0, 0, 64, 64, 131, 66)
	SpriteFrame(0, 0, 64, 64, 196, 66)





	
end event

event RSDKDraw
	DrawSprite(0)
end event

event RSDKLoad
	LoadSpriteSheet("Global/Display.gif")
	SpriteFrame(-16, -16, 32, 32, 1, 143)
end event
